//package com.plian.system.service.om.module.impl;
//
//
//import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
//import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
//import com.plian.Tools.CollectionUtil;
//import com.plian.system.dto.om.module.ModelByTime;
//import com.plian.system.entity.om.module.ModuleChild;
//import com.plian.system.entity.om.module.ModuleConfig;
//import com.plian.system.mapper.om.ModuleChildMapper;
//import com.plian.system.mapper.om.ModuleConfigMapper;
//import com.plian.system.mybatis.base.BaseServiceImpl;
//import com.plian.system.service.om.module.IModuleChildService;
//import com.plian.system.service.om.module.IModuleConfigService;
//import com.plian.system.vo.om.module.ModelByTimeVO;
//import com.plian.system.vo.om.module.ModuleConfigVO;
//import com.plian.system.wrapper.om.ModuleChildWrapper;
//import com.plian.system.wrapper.om.ModuleConfigWrapper;
//import lombok.AllArgsConstructor;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.beans.BeanUtils;
//import org.springframework.stereotype.Service;
//import org.springframework.transaction.annotation.Transactional;
//
//import java.util.*;
//import java.util.stream.Collectors;
//
///**
// * 模块配置信息 服务实现类
// *
// * @author xiaohu
// */
//@Slf4j
//@Service
//@AllArgsConstructor
//public class ModuleChildServiceImpl extends BaseServiceImpl<ModuleChildMapper, ModuleChild> implements IModuleChildService {
//
//	private final ModuleChildWrapper moduleChildWrapper;
//
//	private final ModuleChildMapper childMapper;
//
//	/**
//	 * 批量保存模块配置信息子企业信息
//	 * @param moduleConfig
//	 */
//	@Override
//	@Transactional(rollbackFor=Exception.class)
//	public void saveChilds(ModuleConfig moduleConfig){
//		List<String> childOrgIds = moduleConfig.getChildOrgIds();
//		if (CollectionUtil.isNotEmpty(childOrgIds)){
//			List<ModuleChild> moduleChildren = new ArrayList<>();
//			for (String childOrgId:childOrgIds){
//				ModuleChild moduleChild = new ModuleChild();
//				BeanUtils.copyProperties(moduleConfig,moduleChild);
//				moduleChild.setChildOrgId(childOrgId);
//				moduleChildren.add(moduleChild);
//			}
//			//批量保存
//			saveList(moduleChildren);
//		}
//	}
//
//	/**
//	 * 删除所有子企业信息
//	 */
//	@Override
//	@Transactional(rollbackFor=Exception.class)
//	public void deleteAll(String orgId,Date startTime,Date endTime){
//		childMapper.delete(new LambdaQueryWrapper<ModuleChild>().eq(ModuleChild::getIsDeleted,0).eq(ModuleChild::getOrgId,orgId)
//				.ge(ModuleChild::getStartTime,startTime).le(ModuleChild::getEndTime,endTime));
//	}
//
//	/**
//	 * 获取子企业
//	 * @param moduleConfig
//	 * @return
//	 */
//	@Override
//	public List<ModuleChild> getChilds(ModuleConfigVO moduleConfig){
//		return childMapper.selectList(new LambdaQueryWrapper<ModuleChild>().eq(ModuleChild::getFormType, moduleConfig.getFormType())
//				.eq(ModuleChild::getOrgId, moduleConfig.getOrgId())
//				.ge(ModuleChild::getStartTime,moduleConfig.getStartTime()).le(ModuleChild::getEndTime,moduleConfig.getEndTime()));
//
//	}
//
//	/**
//	 * 批量获取子企业
//	 * @return
//	 */
//	@Override
//	public List<ModuleChild> getChildByList(){
//		return childMapper.selectList(new LambdaQueryWrapper<ModuleChild>().eq(ModuleChild::getIsDeleted,0));
//
//	}
//
//}
